package com.java.anonymity;

/**
 * 匿名内部类的前提：必须是类或者接口
 *
 * 格式：new 接口名/类名(){重写抽象方法};
 */
public class AnonymityClass {
    public static void main(String[] args) {
       /* // 整体就等效于：是Animal父类德子类对象。
        new Animal(){
            @Override
            public void eat() {
                System.out.println("动物吃好吃的");
            }
        }.eat();*/
        
        String name = "哈士奇"; //通过匿名内部类访问局部变量，在JDK8版本之前，必须加上final关键字。
//        name = "金毛"; // jdk8只是可以不用写，但是final默认加上的，所以你不可以重新再写一个name="金毛"。
        
        Animal animal = new Animal() {
            @Override
            public void eat() {
                System.out.println(name+"喜欢吃骨头");
            }
        };
        animal.eat();
    }
}
